home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 5 / Apprentice-Release5.iso / Source Code / Libraries / DCLAP 6d / dclap6d / corelib / ncbilcl.bwn < prev    next >
Text File  |  1996-07-05  |  6KB  |  192 lines

  1. /*   ncbilcl.h
  2. * ===========================================================================
  3. *
  4. *                            PUBLIC DOMAIN NOTICE
  5. *               National Center for Biotechnology Information
  6. *
  7. *  This software/database is a "United States Government Work" under the
  8. *  terms of the United States Copyright Act.  It was written as part of
  9. *  the author's official duties as a United States Government employee and
  10. *  thus cannot be copyrighted.  This software/database is freely available
  11. *  to the public for use. The National Library of Medicine and the U.S.
  12. *  Government have not placed any restriction on its use or reproduction.
  13. *
  14. *  Although all reasonable efforts have been taken to ensure the accuracy
  15. *  and reliability of the software and data, the NLM and the U.S.
  16. *  Government do not and cannot warrant the performance or results that
  17. *  may be obtained by using this software or data. The NLM and the U.S.
  18. *  Government disclaim all warranties, express or implied, including
  19. *  warranties of performance, merchantability or fitness for any particular
  20. *  purpose.
  21. *
  22. *  Please cite the author in any work or product based on this material.
  23. *
  24. * ===========================================================================
  25. *
  26. * File Name:  ncbilcl.h
  27. *
  28. * Author:  Gish, Kans, Ostell, Schuler
  29. *
  30. * Version Creation Date:   1/1/91
  31. *
  32. * $Revision: 2.7 $
  33. *
  34. * File Description:
  35. *        system dependent header
  36. *        MS Windows version for Borland C++
  37. *
  38. * Modifications:
  39. * --------------------------------------------------------------------------
  40. * Date     Name        Description of modification
  41. * -------  ----------  -----------------------------------------------------
  42. *
  43. * ==========================================================================
  44. */
  45. #ifndef _NCBILCL_
  46. #define _NCBILCL_
  47.  
  48. /* PLATFORM DEFINITION FOR IBM PC UNDER MS WINDOWS WITH BORLAND C++ */
  49.  
  50. #define COMP_BOR
  51. #define WIN_MSWIN
  52.  
  53.  
  54. // the following definitions were added for WindowsNT
  55. #ifdef WIN32
  56. #define OS_WINNT
  57. #define FAR
  58. #define NEAR
  59. #ifdef i386
  60. #define PROC_I80X86
  61. #define PROC_I80_386
  62. #define PASCAL    __stdcall
  63. #define CDECL    __cdecl
  64. #endif
  65. #ifdef MIPS
  66. #define PROC_MIPS
  67. #define PASCAL
  68. #define CDECL
  69. #endif
  70. #ifdef ALPHA
  71. #define PROC_ALPHA
  72. #define PASCAL
  73. #define CDECL
  74. #endif
  75.  
  76. #else
  77. #ifdef WIN32BOR
  78.  
  79. /* dgg hack */
  80.  
  81. /*#define WIN16 << bad for ncbimem memory routines*/
  82.  
  83. #define OS_DOS
  84.  
  85. #define PROC_I80X86
  86.  
  87. #define FAR
  88.  
  89. #define NEAR
  90.  
  91. #define PASCAL    __stdcall
  92.  
  93. #define CDECL    __cdecl
  94.  
  95.  
  96.  
  97. #else
  98. #define WIN16
  99. #define OS_DOS
  100. #define PROC_I80X86
  101. #define FAR        __far
  102. #define NEAR    __near
  103. #define PASCAL    __pascal
  104. #define CDECL    __cdecl
  105. #define EXPORT  __export
  106. #endif
  107. #endif
  108.  
  109. /*----------------------------------------------------------------------*/
  110. /*      Desired or available feature list                               */
  111. /*----------------------------------------------------------------------*/
  112.  
  113. /*----------------------------------------------------------------------*/
  114. /*      #includes                                                       */
  115. /*----------------------------------------------------------------------*/
  116. #define __MSC__
  117.  
  118. #include <stddef.h>
  119. #include <sys\types.h>
  120. #include <limits.h>
  121. #include <sys\stat.h>
  122. #include <stdio.h>
  123. #include <ctype.h>
  124. #include <string.h>
  125. #include <stdlib.h>
  126. #include <math.h>
  127. #include <errno.h>
  128. #include <float.h>
  129.  
  130. /*----------------------------------------------------------------------*/
  131. /*      Missing ANSI-isms                                               */
  132. /*----------------------------------------------------------------------*/
  133. #ifndef FILENAME_MAX
  134. #define FILENAME_MAX 63
  135. #endif
  136.  
  137. /*----------------------------------------------------------------------*/
  138. /*      Aliased Logicals, Datatypes                                     */
  139. /*----------------------------------------------------------------------*/
  140. #define PNTR FAR *
  141. #define HNDL NEAR *
  142.  
  143. typedef int (FAR PASCAL *Nlm_FnPtr)();
  144. #define FnPtr           Nlm_FnPtr
  145.  
  146. /*----------------------------------------------------------------------*/
  147. /*      Misc Macros                                                     */
  148. /*----------------------------------------------------------------------*/
  149. #define PROTO(x)    x    /* Function prototypes are real */
  150. #define VPROTO(x)    x    /* Prototype for variable argument list */
  151. #define DIRDELIMCHR    '\\'
  152. #define DIRDELIMSTR    "\\"
  153. #define CWDSTR    "."
  154.  
  155. #define KBYTE    (1024)
  156. #define MBYTE    (1048576L)
  157.  
  158. #define IS_LITTLE_ENDIAN
  159. #define TEMPNAM_AVAIL
  160.  
  161. /*----------------------------------------------------------------------*/
  162. /*      For importing Microsoft C code                                  */
  163. /*----------------------------------------------------------------------*/
  164. #define _near near
  165. #define _far far
  166. #define _huge huge
  167. #define _cdecl cdecl
  168. #define _pascal pascal
  169. typedef unsigned int UINT;
  170. typedef unsigned long ULONG;
  171. typedef unsigned short USHORT;
  172. typedef unsigned char UCHAR;
  173.  
  174. /*----------------------------------------------------------------------*/
  175. /*      Macros for Floating Point                                       */
  176. /*----------------------------------------------------------------------*/
  177. #define EXP2(x) exp((x)*LN2)
  178. #define LOG2(x) (log(x)*(1./LN2))
  179. #define EXP10(x) exp((x)*LN10)
  180. #define LOG10(x) (log10(x))
  181.  
  182. /*----------------------------------------------------------------------*/
  183. /*      Macros Defining Limits                                          */
  184. /*----------------------------------------------------------------------*/
  185. #if defined(WIN32) || defined(WIN32BOR)
  186. #define MAXALLOC    0x7F000000 /* Largest permissible memory request */
  187. #else
  188. #define MAXALLOC    0x10000 /* Largest permissible memory request */
  189. #endif
  190.  
  191. #endif
  192.